package com.ytf.core.web.pojo.dto;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import io.swagger.v3.oas.annotations.media.Schema;

import java.time.LocalDateTime;
import java.util.List;

/**
 * <p>
 * 用户表
 * </p>
 *
 * @author YTF
 * @since 2025-05-20
 */
@Data
@Schema(description = "用户数据传输对象")
public class UserDto {

    /**
     * 用户名
     */
    @Schema(description = "用户登录名", requiredMode = Schema.RequiredMode.REQUIRED)
    private String username;

    /**
     * 密码
     */
    @Schema(description = "用户密码，建议加密存储", requiredMode = Schema.RequiredMode.REQUIRED)
    private String password;

    /**
     * 手机号
     */
    @Schema(description = "用户手机号码")
    private String mobile;

    /**
     * 邮箱
     */
    @Schema(description = "用户电子邮箱")
    private String email;

    /**
     * 启用状态（0-禁用，1-启用）
     */
    @Schema(description = "用户启用状态：false-禁用，true-启用", defaultValue = "true")
    private Boolean enabled;

    /**
     * 角色列表
     */
    @Schema(description = "用户拥有的角色ID列表")
    private List<String> roleIds;
}